
public class Tester {
	
	public void test()
    {
    	// Vector3 test
		System.out.println("Vector3 Test:");
        Vector3 v = new Vector3(2.1, 3.1, 4.1);
        System.out.println(v.toString());
        System.out.println(v.length());
        System.out.println(v.sqrLength());
        
        Vector3 normalizedV = v.normalize();
        System.out.println(normalizedV.length());
        
        Vector3 negV = v.negate();
        System.out.println(negV.toString());
        
        Vector3 x = new Vector3(-2.1, -3.1, -4.1);
        System.out.println((v.add(x)).toString());
        System.out.println((v.sub(x)).toString());
        System.out.println((v.mul(-1.0)).toString());
        System.out.println((v.div(2.0)).toString());
        System.out.println(v.dot(x));
        System.out.println((v.cross(x)).toString());
        System.out.println();
        
        // Ray3 test
        System.out.println("Ray3 Test:");
        Vector3 origin = new Vector3(0.0, 0.0, 0.0);
        Vector3 direction = new Vector3(1.0, 0.0, 0.0);
        Ray3 ray = new Ray3(origin, direction);
        System.out.println((ray.getPoint(2.5)).toString());
        System.out.println();
        
        // Color3 test
        System.out.println("Color3 test:");
        Color3 c1 = new Color3(0.8, 0.8, 0.8);
        Color3 c2 = new Color3(1.0, 0.0, 0.0);
        System.out.println(c1.add(c2).toString());
        System.out.println(c1.mul(2.0));
        System.out.println(c1.modulate(c2));
        System.out.println(Color3.white().modulate(c1.add(c2)));
    }
}
